package it.unipg.bipod.applicationLogic;

/**
 * Eccezione sollevata dai metodi di {@link SegretarioApplication} e
 * {@link DocenteApplication}, da cui discendono tutte le altre eccezioni
 * sollevabili da quesete due classi.<br>
 * In generale viene lanciata un'eccezione che è istanza di una sottoclasse di
 * ApplicationException in casi spefici e fisiologici che vanno trattati a parte,
 * mentre viene lanciata un'istanza di ApplicationException quando si verificano
 * errori imprevisti causati da motivi difficilmente rintracciabili e che
 * richiederebbero l'attenzione di un amministratore.
 * 
 * @author Lorenzo Porzi
 * @see BandoScadutoException
 * @see StatoDocenteException
 * @see StatoCorsoException
 * @see RichiestaEffettuataException
 */
public class ApplicationException extends Exception {
	private static final long serialVersionUID = -6589134883674590544L;

	/**
	 * Costruisce una ApplicationException con la descrizione specificata.
	 * 
	 * @param descrizione la descrizione delle cause di questa eccezione.
	 */
	public ApplicationException(String descrizione) {
		super(descrizione);
	}
	
	/**
	 * Costruisce una ApplicationException che incapsula un'altra eccezione.
	 * 
	 * @param eccezione l'eccezione che ha causato questa ApplicationException.
	 */
	public ApplicationException(Exception eccezione) {
		super(eccezione);
	}
}
